package com.eduagent.xwqeduagent.api.DocumentTranslation.constant;

/**
 * Constants for document translation
 */
public class DocumentTranslationConstant {
    /**
     * Base API URL
     */
    public static final String BASE_URL = "https://api.niutrans.com";
    
    /**
     * Upload and translate API endpoint
     */
    public static final String UPLOAD_TRANSLATE_URL = BASE_URL + "/v2/doc/translate/upload";
    
    /**
     * Get document status API endpoint
     */
    public static final String STATUS_URL = BASE_URL + "/v2/doc/translate/status/%s";
    
    /**
     * Interrupt translation API endpoint
     */
    public static final String INTERRUPT_URL = BASE_URL + "/v2/doc/translate/interrupt/%s";
    
    /**
     * Download file API endpoint
     */
    public static final String DOWNLOAD_URL = BASE_URL + "/v2/doc/translate/download/%s";
    
    /**
     * Get download URL API endpoint
     */
    public static final String DOWNLOAD_URL_ENDPOINT = BASE_URL + "/v2/doc/translate/getDownloadUrl/%s";
    
    /**
     * Delete file API endpoint
     */
    public static final String DELETE_URL = BASE_URL + "/v2/doc/translate/delete/%s";
    
    /**
     * Translation status codes
     */
    public static class TranslationStatus {
        /**
         * Not translated
         */
        public static final int NOT_TRANSLATED = 101;
        
        /**
         * In queue
         */
        public static final int IN_QUEUE = 102;
        
        /**
         * Translating
         */
        public static final int TRANSLATING = 103;
        
        /**
         * Translation terminated
         */
        public static final int TERMINATED = 104;
        
        /**
         * Translation success
         */
        public static final int SUCCESS = 105;
        
        /**
         * Translation failure
         */
        public static final int FAILURE = 106;
    }
    
    /**
     * Download file types
     */
    public static class DownloadType {
        /**
         * Original file
         */
        public static final int ORIGINAL = 0;
        
        /**
         * Translated file
         */
        public static final int TRANSLATED = 1;
        
        /**
         * Bilingual file
         */
        public static final int BILINGUAL = 2;
        
        /**
         * Parsed file (PDF only)
         */
        public static final int PARSED = 3;
        
        /**
         * PDF translated file (PDF only)
         */
        public static final int PDF_TRANSLATED = 4;
        
        /**
         * PDF bilingual file (PDF only)
         */
        public static final int PDF_BILINGUAL = 5;
    }
    
    /**
     * Processing modes for PDF files
     */
    public static class ProcessingMode {
        /**
         * Editable PDF
         */
        public static final int EDITABLE = 0;
        
        /**
         * Scanned PDF
         */
        public static final int SCANNED = 1;
        
        /**
         * Auto-detect
         */
        public static final int AUTO_DETECT = 2;
    }
    
    /**
     * Domain codes
     */
    public static class RealmCode {
        /**
         * General domain
         */
        public static final int GENERAL = 0;
        
        /**
         * Medical domain
         */
        public static final int MEDICAL = 1;
        
        /**
         * Patent domain
         */
        public static final int PATENT = 2;
    }
} 